Snippet access systems and methods

ABSTRACT

In one of many possible embodiments, a system includes a requesting media content processing subsystem and a network entity. The requesting media content processing subsystem is configured to transmit to the network entity a request to access a snippet of a media content instance. The network entity is configured to augment the snippet with additional media content and provide a user with access to the augmented snippet via the requesting media content processing subsystem.

BACKGROUND INFORMATION

The advent of computers, interactive electronic communication, theInternet, and other advances in the digital realm of consumerelectronics have resulted in a great variety of programming, recording,and viewing options for users who view media content such as televisionprograms. In implementing such options, the set-top box (“STB”) hasbecome an important computing device for accessing media contentservices and the media content within those services. In addition tosupporting traditional analog broadcast video functionality, STBs alsosupport an increasing number of two-way digital services such asvideo-on-demand and personal video recording.

An STB is typically connected to a cable or satellite, or generally, asubscriber television system, and includes hardware and softwarenecessary to provide the functionality of the subscriber televisionsystem. Conventional STBs include a processor, communication components,and memory and are connected to a television or other display device,such as a personal computer. While many STBs are stand-alone devicesthat are externally connected to a television, an STB and/or itsfunctionality may be integrated into a television or personal computeror even into an audio device such as a programmable radio, as is wellknown.

An STB is usually configured to provide users with a large number andvariety of media content choices. For example, a user may choose to viewor otherwise access a variety of television programs, pay-per-viewservices, video-on-demand programming, Internet services, and audioprogramming via an STB.

As mentioned, an STB may also include a personal video recording (“PVR”)application that allows a user to temporarily and/or permanently recordselected media content to a storage device. Such recording functionalityenables a user to view media content in “trick play,” or non-linear,modes. Trick play modes include, but are not limited to, slow motion,fast motion, reverse play, fast forward play, instant replay, jumping,pausing of live broadcast, and scanning. To facilitate trick play modes,the media content is buffered or stored in a temporary memory buffer,often called a live cache buffer, so that it may be replayednon-linearly.

The ability to buffer live broadcasts has had a significant impact onthe broadcast television industry. In the past, the basic business modelfor broadcast television programming has been free or low costdistribution of media content, subsidized by the insertion ofcommercials. Commercials also allow media content providers to promoteand provide exposure to new television programs and other instances ofmedia content.

However, PVRs allow users to easily skip many of these commercials. As aresult, traditional advertisements and promotions for new televisionprograms and other instances of media content are being rendered lessand less effective as the number of PVR users increases. Media contentproviders have therefore been forced to turn to other methods ofpromoting new instances of media content.

One effective method of promoting new instances of media content isthrough “word of mouth” among media content consumers. For example, theInternet has spawned social networking websites and chat rooms whereinusers often discuss broadcast television programming and other instancesof media content. Users often rely on the recommendations of others todiscover new instances of media content for viewing. Moreover, becauseof the recording capabilities of PVRs, some users may even record andthen distribute to other users through peer-to-peer networks entireepisodes of a particular television program, for example.

The recording and distribution of entire episodes of media contentinstances is a major concern among media content providers because itmay significantly reduce their revenue through advertising, broadcastrights, and syndication. Moreover, it is currently extremely difficultfor media content providers to monitor and/or control such distribution,and the expansion of broadcast media content to the Internet and topeer-to-peer file sharing networks has continued. The sharing of mediacontent among consumers, when properly controlled by media contentproviders, has the potential to spread awareness of programming virallyand to increase the number of consumers viewing particular media contentinstances. However, recording and distribution tools that provideindividual viewers with the ability to evangelize their favoriteprogramming with others while at the same time allowing media contentproviders to control and profit by the shared distribution of mediacontent do not exist.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate various embodiments and are a partof the specification. The illustrated embodiments are merely examplesand do not limit the scope of the disclosure. Throughout the drawings,identical reference numbers designate identical or similar elements.

FIG. 1 illustrates an example of a media content access system,according to an embodiment.

FIG. 2 is an illustration of an exemplary media content providernetwork, according to an embodiment.

FIG. 3 is a block diagram of an exemplary media content processingsubsystem, according to an embodiment.

FIG. 4 illustrates an exemplary remote control user input device,according to an embodiment.

FIG. 5 illustrates a viewing screen of an exemplary display device witha particular scene or frame of a media content instance displayedthereon, according to an embodiment.

FIG. 6 shows a graphic that may be displayed by the display device toindicate that a snippet of a media content instance is being recorded,according to an embodiment.

FIG. 7 shows a first marker that may be positioned along a progress bargraphical user interface (GUI) to indicate a beginning frame of asnippet of a media content instance, according to an embodiment.

FIG. 8 shows a second marker that may be positioned along the progressbar GUI to indicate an ending frame of a snippet of a media contentinstance, according to an embodiment.

FIG. 9 is a block diagram of an exemplary snippet file, according to anembodiment.

FIG. 10 illustrates an exemplary snippet access system wherein multipleprocessing subsystems may be configured to access a recorded snippet,according to an embodiment.

FIG. 11 illustrates an alternative exemplary snippet access systemwherein multiple processing subsystems may be configured to access arecorded snippet, according to an embodiment.

FIG. 12 illustrates an exemplary snippet file with additional mediacontent contained therein that has been added by the media contentprovider server, according to an embodiment.

FIG. 13 illustrates an exemplary GUI that may be displayed to provide auser with access to a number of recorded snippets, according to anembodiment.

FIG. 14 shows an exemplary GUI that may be configured to display a userwith access to one or more snippets that have been received from anotheruser, according to an embodiment.

FIG. 15 illustrates an exemplary method of sharing a snippet of a mediacontent instance between multiple processing subsystems, according to anembodiment.

FIG. 16 illustrates an alternative exemplary method of sharing a snippetof a media content instance between multiple processing subsystems,according to an embodiment.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS I. Introduction

Preferred exemplary systems and methods for providing a user with theability to record, share, or otherwise access a snippet of a mediacontent instance are described herein. As used herein, the term “mediacontent instance” will be used to refer generally to any televisionprogram, on-demand program, pay-per-view program, broadcast mediaprogram, commercial, advertisement, video, movie, song, photograph, orany segment or combination of these or other forms of media content thatmay be experienced or viewed by a user. The term “snippet”, as usedherein, refers to any portion or number of frames of a media contentinstance. For example, a snippet may include as little as a single frameof a media content instance, or it may include up to and includingapproximately the entire length of the media content instance. As usedherein, the term “accessing a snippet” means viewing, sharing,transmitting, presenting (e.g., displaying), copying, or otherwiseprocessing a snippet.

In certain embodiments, a media content processing subsystem, such as aset-top box (STB), is configured to communicate with a network entity,such as a media content provider server. A user may transmit to theprocessing subsystem a request to access a snippet that has beenrecorded by the processing subsystem or by some other recording device.The processing subsystem may then relay the request to the networkentity, which processes the request and augments the snippet withadditional media content. The additional content may include, but is notlimited to, one or more advertisements, commercials, promotions, screenshots, credits, and/or any other instance of media content as may servea particular application. The user may then access the augmented snippetvia one or more graphical user interfaces provided by the processingsubsystem.

As used herein, the term “requesting media content processing subsystem”will be used to refer to a media content processing subsystem thattransmits to a network entity a request to access a snippet that hasbeen recorded. The term “recording media content processing subsystem”will be used to refer to a media content processing subsystem thatrecords a snippet of a media content instance and/or shares a snippet ofa media content instance with another media content processingsubsystem. It will be recognized that in some examples a particularmedia content processing subsystem may be configured to serve as both arequesting and a recording media content processing subsystem.

The systems and methods described herein may be used to provide mediacontent consumers with the ability to easily record, share, andotherwise access snippets of favorite instances of media content. Thesharing of media content snippets among users may serve to virallyspread awareness of a particular media content instance and may resultin an increased number of viewers for a particular media contentinstance. Moreover, the systems and methods described herein mayfacilitate more effective advertising and may be used to increaserevenue for media content providers by allowing advertisers to includeadvertisements and/or other additional content within an enhancedsnippet that is viewed or otherwise accessed by a user.

Components and functions of exemplary embodiments of media contentaccess systems and methods will now be described in more detail.

II. Exemplary System View

FIG. 1 illustrates an example of a media content access system 100,according to one embodiment. Media content access system may take manydifferent forms and include multiple and/or alternate components andfacilities. Examples of such multiple/alternate components andfacilities are reflected in commonly-assigned patent applicationsentitled “Enhanced Content Access Systems and Methods” to Roberts, etal. (Ser. No. ______, attorney docket number 05-1012), and entitled“Media Content Access Systems and Methods” to Roberts, et al. (Ser. No.______, attorney docket number 05-1015), each of which being filed onthe same day as the present application, and each of which incorporatedherein by reference in their respective entireties.

As shown in FIG. 1, a media content processing subsystem 110 isconfigured to communicate with and receive a data stream (i.e., a mediacontent stream) containing a media content instance from a media contentprovider 111. The media content processing subsystem 110 and mediacontent provider 111 may communicate using any known communicationtechnologies, devices, media, and protocols supportive of remote datacommunications, including, but not limited to, cable networks,subscriber television networks, satellite networks, the Internet,intranets, local area networks, wireless networks (e.g., mobiletelephone networks), optical fiber networks, data transmission media,communications devices, Transmission Control Protocol (“TCP”), InternetProtocol (“IP”), File Transfer Protocol (“FTP”), telnet, HypertextTransfer Protocol (“HTTP”), socket connections, Ethernet, and othersuitable communications networks and technologies.

The media content processing subsystem 110 is configured to process themedia content stream provided by the media content provider 111 andprovide a signal to a display device 112 so that the display device 112may display the media content. As will be described in more detailbelow, the media content processing subsystem 110 may be controlled by auser input device 113 and/or one or more additional access devices 114.

While an exemplary media content access system 100 is shown in FIG. 1,the exemplary components illustrated in FIG. 1 are not intended to belimiting. Indeed, additional or alternative components and/orimplementations may be used, as is well known. Each of the components ofsystem 100 will now be described in additional detail.

A. Media Content Provider

Media content provider 111 is configured to provide various types ofmedia content via a satellite, cable system, subscriber televisionnetwork, the Internet, optical fiber network, wireless network, or anyother suitable network. The media content may include, but is notlimited to, television programs, pay-per-view services, video-on-demandprogramming, Internet services, DVD content, and audio programming.

An exemplary media content provider 111 includes a media contentprovider server 121, as shown in FIG. 2. FIG. 2 is an illustration of anexemplary media content provider network. As shown in FIG. 2, the mediacontent provider server 121, media content processing subsystem 110, oneor more of the additional access devices 114, and/or any other networkentity may be configured to communicate one with another via one or moretypes of networks 120 and communication links thereto. The network 120shown in FIG. FIG. 2 may include the Internet, an intranet or otherprivate packet-switched network, a cable television network (e.g.,hybrid fiber-coax network), a wireless broadcast network (e.g., asatellite media broadcasting network or terrestrial broadcastingnetwork), a telephone network, a provider-specific network (e.g., aVerizon® FIOS® network and/or a TiVo® network), an optical fibernetwork, or any other suitable network. In some alternative examples,the processing subsystem 110 and/or one or more of the additional accessdevices 114 may be connected directly to the media content providerserver 121.

B. Display Device

As mentioned, the processing subsystem 110 may be coupled to a displaydevice 112 that is configured to display or play the media content. Thedisplay device 112 may include, but is not limited to, a television,computer monitor, handheld device, or any other device configured todisplay or play the media content.

C. Media Content Processing Subsystem

FIG. 3 is a block diagram of an exemplary media content processingsubsystem 110 (or simply “processing subsystem 110”) according to anexemplary embodiment. The processing subsystem 110 may include anycombination of hardware, software, and firmware configured to process anincoming media content stream. As used herein and in the appendedclaims, unless otherwise specifically denoted, the terms “media contentprocessing subsystem” and “processing subsystem” will be used to referexpansively to all possible user terminals and/or receivers that areconfigured to process digital and/or analog media content. Hence, anexemplary processing subsystem 110 may include, but is not limited to, aset-top box, home communication terminal (“HCT”), digital homecommunication terminal (“DHCT”), stand-alone personal video recorder(“PVR”), digital video disc (“DVD”) player, video-enabled phone,personal computer, and/or any other access device.

In certain embodiments, the processing subsystem 110 may include anycomputer hardware and/or instructions (e.g., software programs), orcombinations of software and hardware, configured to perform theprocesses described herein. In particular, it should be understood thatprocessing subsystem 110 may be implemented on one physical computingdevice or may be implemented on more than one physical computing device.Accordingly, processing subsystem 110 may include any one of a number ofwell known computing devices, and may employ any of a number of wellknown computer operating systems, including, but by no means limited to,known versions and/or varieties of the Microsoft Windows® operatingsystem, the Unix operating system, and the Linux operating system.

Accordingly, the processes described herein may be implemented at leastin part as instructions executable by one or more computing devices. Ingeneral, a processor (e.g., a microprocessor) receives instructions,e.g., from a memory, a computer-readable medium, etc., and executesthose instructions, thereby performing one or more processes, includingone or more of the processes described herein. Such instructions may bestored and transmitted using a variety of known computer-readable media.

A computer-readable medium (also referred to as a processor-readablemedium) includes any medium that participates in providing data (e.g.,instructions) that may be read by a computer (e.g., by a processor of acomputer). Such a medium may take many forms, including, but not limitedto, non-volatile media, volatile media, and transmission media.Non-volatile media may include, for example, optical or magnetic disksand other persistent memory. Volatile media may include, for example,dynamic random access memory (“DRAM”), which typically constitutes amain memory. Transmission media may include, for example, coaxialcables, copper wire and fiber optics, including the wires that comprisea system bus coupled to a processor of a computer. Transmission mediamay include or convey acoustic waves, light waves, and electromagneticemissions, such as those generated during radio frequency (“RF”) andinfrared (“IR”) data communications. Common forms of computer-readablemedia include, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, any other magnetic medium, a CD-ROM, DVD, any otheroptical medium, punch cards, paper tape, any other physical medium withpatterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any othermemory chip or cartridge, or any other medium from which a computer canread.

While an exemplary processing subsystem 110 is shown in FIG. 3, theexemplary components illustrated in FIG. 3 are not intended to belimiting. Indeed, additional or alternative components and/orimplementations may be used. Various components of the processingsubsystem 110 will now be described in additional detail.

1. Communication Interfaces

As shown in FIG. 3, the processing subsystem 110 may include acommunication interface unit 131 configured to receive media contentfrom the media content provider 111. The processing subsystem 110 mayalso include a receiver 132 configured to receive input commands from auser input device 113. The user input device 113 may include, forexample, a remote control, keyboard, or any other suitable input deviceand may be configured to communicate with the receiver 132 via an IRlink, electrical connection, or any other suitable communication link.

An exemplary remote control user input device 113 is illustrated in FIG.4. It will be recognized that the input device 113 shown in FIG. 4 ismerely illustrative of the many different types of user input devicesthat may be used in connection with the present systems and methods.

In some examples, the input device 113 may be configured to enable auser to control viewing options of the media content. For example,rewind 144 and fast-forward buttons 145 enable a user to accessdifferent scenes or frames within recorded media content. A programguide button 146 may be configured to evoke the display of a programguide by the display device 112. Arrow buttons 147 allow the user tonavigate through various on-screen menus that may be displayed by thedisplay device 112. A select button 148 allows the user to selectvarious options that may be presented in a graphical user interface(“GUI”) that is displayed by the display device 112.

A record button 149 may also be included on the input device 113. Therecord button 149 may be configured to enable the user to designate aspermanently recorded any media content instance that is buffered in thelive cache buffer 136. The record button 149 may additionally oralternatively be used to record a snippet of a media content instance,as will be described in more detail below.

Returning to FIG. 3, one or more additional access devices 114 may alsobe configured to communicate with the processing subsystem 110. Theseaccess devices 114 may include, but are not limited to, personalcomputers and mobile devices (e.g., laptops, personal digital assistants(“PDAs”), cellular phones, etc.). In some examples, as will be describedin more detail below, the access devices 114 may be configured to accesscontent stored and/or processed by the processing subsystem 110. Forexample, media content that has been recorded by the processingsubsystem 110 may be accessed and viewed on a personal computer. Inaddition, as will be described in more detail below, a snippet of aparticular media content instance may also be accessed via one or moreof the additional access devices 114. It will be recognized that theadditional access devices 114 may also be used to program or otherwisecontrol the functions of the processing subsystem 110.

The processing subsystem 110 may also include an output driver 133configured to interface with or drive the display device 112. The outputdriver 133 may include any combination of hardware, software, andfirmware as may serve a particular application.

2. Storage Devices

Storage device 134 may include one or more data storage media, devices,or configurations and may employ any type, form, and combination ofstorage media. For example, the storage device 134 may include, but isnot limited to, a hard drive, network drive, flash drive, magnetic disc,optical disc, or other non-volatile storage unit. As will be describedin more detail below, various portions of media content may betemporarily and/or permanently stored in the storage device 134.

The storage device 134 of FIG. 3 is shown to be a part of the processingsubsystem 110 for illustrative purposes only. It will be understood thatthe storage device 134 may additionally or alternatively be locatedexternal to the processing subsystem 110.

The processing subsystem may also include memory 135. Memory 135 mayinclude, but is not limited to, FLASH memory, random access memory(“RAM”), dynamic RAM (“DRAM”), or a combination thereof. In someexamples, as will be described in more detail below, variousapplications (e.g., a PVR application) used by the processing subsystem110 may reside in memory 135.

As shown in FIG. 3, the storage device 134 may include one or more livecache buffers 136. The live cache buffer 136 may additionally oralternatively reside in memory 135 or in a storage device external tothe processing subsystem 110. As will be described in more detail below,media content data may be temporarily stored in the live cache buffer136 to facilitate viewing of the media content in one or more trick playmodes.

3. Tuner

Tuner 137 is configured to tune to a particular television channel,stream, address, frequency or other carrier in order to process mediacontent that is transmitted on that carrier. In some examples, the tuner137 may include multiple tuners such that multiple carriers of mediacontent may be processed and/or shown on a display device 112. Forexample, the tuner 137 may include a first tuner configured to receivean analog video signal corresponding to a first media content instanceand a second tuner configured to simultaneously receive a digitalcompressed stream corresponding to a second media content instance. Itwill be recognized that the tuner 137 may have any number of tunersconfigured to receive any kind of media content.

In some examples, media content received at the tuner 137 is temporarilybuffered, or stored, in the live cache buffer 136. If there are multipletuners 137, there may be a live cache buffer 136 corresponding to eachof the tuners 137. Once media content is temporarily stored in the livecache buffer 136, the user may then designate whether the media contentis to be permanently stored as a permanent recording in the storagedevice 134 or whether it is to be deleted. As used herein, the term“permanent recording” will be understood to mean media content that isstored for an extended period of time as decided by the user.

It will be recognized that in some alternative examples, media contentis delivered to the processing subsystem 110 via an internet protocol(“IP”) backchannel.

4. Processors

As shown in FIG. 3, the processing subsystem 110 may include one or moreprocessors, such as processor 138 configured to control the operationsof the processing subsystem 110. The processing subsystem 110 may alsoinclude a signal processing unit 139 configured to process incomingmedia content. The signal processing unit 139 may be configured, forexample, to demodulate and parse encoded digital media content. In someexamples, the processing subsystem 110 may include one or more signalprocessing units 139 corresponding to each of the tuners 137.

The processing subsystem 110 may also include a graphics engine 140configured to generate graphics that are to be displayed by the displaydevice 112. The graphics may include GUIs such as, but not limited to, aprogram guide, a progress bar, and other graphics.

5. Application Clients

Returning to FIG. 3, one or more applications 141-143 residing withinthe processing subsystem 110 may be executed upon initiation by a userof the processing subsystem 110. The applications 141-143, orapplication clients, may reside in memory 135 or in any other area ofthe processing subsystem 110 and be executed by the processor 138.

As shown in FIG. 3, one of the applications may be a program guideapplication 141 configured to generate a program guide that is displayedon the display device 112. An exemplary program guide includes a GUIthat performs various functions including allowing a user to select andview program information associated with various media contentinstances.

The processing subsystem 110 may also include a personal video recording(“PVR”) application 142. A PVR application is also referred to as adigital video recording (“DVR”) application. As used herein and in theappended claims, unless otherwise specifically denoted, the term “PVRapplication” will be used to refer to any application or deviceconfigured to record media content and/or provide for the viewing ofmedia content in trick play mode. As previously mentioned, trick playmodes include, but are not limited to, slow motion, fast motion, reverseplay, fast forward play, instant replay, jumping, pausing of livebroadcast, and scanning. The PVR application 142 may also provide formedia content recording functionality by enabling the temporary and/orpermanent recording of media content to the storage device 134.

In some examples, the PVR application 142 may be integrated into theprocessing subsystem 110, as shown in FIG. 3, or it may be a stand-aloneunit. A stand-alone PVR may be coupled to the processing subsystem 110or it may be used in place of the processing subsystem 110. In theexamples contained herein, it will be assumed that the PVR application142 is integrated into the processing subsystem 110 for illustrativepurposes only.

The processing subsystem 110 may also include a snippet application 143,which may be used by a user to record and/or otherwise process a snippetof a particular media content instance. To facilitate an understandingof the snippet application 143, an exemplary scene or frame of mediacontent is shown in FIG. 5. FIG. 5 illustrates a viewing screen 150 ofan exemplary display device 112 with a particular scene or frame of amedia content instance displayed thereon.

In some instances, a user may desire to record a snippet of a particularmedia content instance such as the media content instance beingdisplayed by the display device 112. The user may then perform a varietyof functions with the snippet. For example, the user may save thesnippet to the storage device 134 or to some other storage medium so asto be able to view the snippet at a later time. The snippet mayadditionally or alternatively be used to access additional contentassociated with the snippet and/or the media content instance of whichthe snippet is a part. In certain embodiments, as will be described inmore detail below, the user may additionally or alternatively share thesnippet with another user.

Accordingly, in some embodiments, a user may record a snippet simply bypressing the record button 149 on the input device 113. It will berecognized that additional or alternative methods may be used to recorda snippet of a media content instance.

Upon pressing the record button 149, the processing subsystem 110 may beconfigured to automatically begin recording the media content instancethat is currently being displayed by the display device 112. In someexamples, as shown in FIG. 6, a graphic 160 may be displayed by thedisplay device 112 to indicate that the snippet is being recorded. Theuser may then press the record button 149 again to stop recording thesnippet. The recorded snippet may then be stored in the storage device134 or in some other storage medium as specified by the user.

Alternatively, a snippet may be recorded or captured from a mediacontent instance that is already either temporarily stored in the livecache buffer 136 or permanently stored in the storage device 134. Forexample, FIG. 7 shows a frame 170 of a particular media content instancethat is already either temporarily stored in the live cache buffer 136or permanently stored in the storage device 134.

As shown in FIG. 7, a progress bar GUI 171 may be displayed on theviewing screen 150. The progress bar 171 graphically represents thelength of the media content instance that has been recorded and may beused by the user to navigate between different frames thereof. In someexamples, the progress bar 171 may include a shaded portion 172 thatgraphically indicates a portion of the media content instance that hasalready been viewed in a particular viewing session.

In certain embodiments, as shown in FIGS. 7-8, the user may record orcapture a snippet from the recorded media content instance bypositioning graphical markers 173 and 174 at locations along theprogress bar 171 that correspond to desired beginning and ending framesof the snippet. The graphical markers 173 and 174 may have any suitableshape and size as may serve a particular application. Furthermore, thepositions of the markers along the progress bar 171 may be controlledusing the arrow buttons 147 or any other suitable input device.

For example, as shown in FIG. 7, if the user desires to begin recordingthe snippet at an elapsed time of 00:18:17 (i.e., 18 minutes and 17seconds into the recorded media content instance), the user may positionthe first marker 173 at a location along the progress bar 171 thatcorresponds to that elapsed time. The user may then press a button onthe input device 113 (e.g., the record button 149) to designate theframe 170 corresponding to the location of the first marker 173 as thebeginning frame of the snippet that is to be recorded.

Likewise, as shown in FIG. 8, the second marker 174 may be positioned ata location along the progress bar 171 that corresponds to the desiredending frame 180 of the snippet. For example, as shown in FIG. 8, theuser may position the second marker 174 at a location along the progressbar 171 corresponding to an elapsed time of 00:20:45 in order to recorda snippet that is 2 minutes and 28 seconds long. Once the second marker174 has been appropriately positioned, the user may press a button onthe input device 113 (e.g., the select button 148) to designate theframe 180 corresponding to the location of the second marker 174 as theending frame of the snippet. The processing subsystem 110 may then beconfigured to record or capture the snippet.

It will be recognized that the length in time of the snippet may vary asmay serve a particular application. In certain embodiments, the lengthof a snippet may be limited by the media content provider 111, forexample, to a predetermined amount of time (e.g., 3 minutes) so as toprevent the recording and distribution of larger segments of mediacontent. In certain embodiments, the media content provider 111 mayadditionally or alternatively limit the number of snippets that may berecorded from a particular media content instance.

Once a snippet has been selected, data representing the snippet may bestored by the processing subsystem 110 as one or more media files. FIG.9 is a block diagram of an exemplary snippet file 190. As shown in FIG.9, the snippet file 190 may include media content data 191 and anextensible markup language (“XML”) tag 192. The media content data 191includes data representing the recorded snippet of media content. TheXML tag 192 may include, but is not limited to, a program identification(“ID”), time and date stamps, information regarding the cast, products,and other items shown within the snippet, marketing information,advertiser information, and/or any other information related to thesnippet of media content. As will be described in more detail below, theinformation included within the XML tag 192 may be used by the mediacontent provider server 121 and/or a different processing subsystem toprocess the snippet file 190.

The XML tag 192 may be created using any suitable programming schema.For example, the XML tag 192 may be created using Rich Site Summary(“RSS”). It will also be recognized that the XML tag 192 mayalternatively be created in a programming schema other than XML.

The snippet file 190 may be stored within the storage device 134, forexample, after it is created so that the snippet file 190 may beaccessed at a later time by the user. Alternatively, the snippet file190 may be stored in a portable storage medium (e.g., a flash drive or acompact disc) so that it may be transferred to and accessed by anotherprocessing subsystem 110.

D. Snippet Access Systems

After the snippet file 190 has been stored, the user may access thesnippet 190 at a later time and/or share the snippet 190 with anotheruser. FIG. 10 illustrates an exemplary snippet access system whereinmultiple processing subsystems 110 may be configured to access arecorded snippet 190, according to an embodiment. Two processingsubsystems 110, 110-1 and 110-2, are shown in FIG. 10 for illustrativepurposes only. It will be recognized that any number of processingsubsystems 110 may be configured to access the recorded snippet 190.

Each processing subsystem 110-1 and 110-2 shown in FIG. 10 may be a partof a peer-to-peer or other type of file sharing network. However, itwill be recognized that the processing subsystems 110 may be a part ofany type of network as may serve a particular application.

In certain embodiments, each processing subsystem 110 may be required tosend data representative of an access request (e.g., 201-1 or 201-2,collectively referred to herein as 201) to the media content providerserver 121 in order to access the recorded snippet 190. It will berecognized that in certain alternative embodiments, one or more of theprocessing subsystems 110 may not be required to send an access request201 to the media content provider server 121 in order to access therecorded snippet 190. It will also be recognized that the access request201 may be sent to any other network entity configured to control accessto the snippet 190.

In response to the access request 201, the media content provider server121 may transmit to the requesting processing subsystem 110 additionalmedia content 202 that is to be added to or included within the snippet190 before the snippet 190 is viewed or otherwise accessed. Additionallyor alternatively, the media content provider server 121 may transmit tothe requesting processing subsystem 110 a decryption key or some otheraccess code that may be used to decrypt or otherwise access the snippet190. In this manner, the media content provider may control and, in manyinstances, profit from users accessing and distributing media contentsnippets. Moreover, such distribution among users may serve to virallyspread awareness of a particular media content instance and may resultin an increased number of viewers for a particular media contentinstance.

In some examples, the additional media content 202 that is added to thesnippet 190 may be selected by the media content provider server 121 inaccordance with data located within the XML tag 192. For example, if theXML tag 192 indicates that the snippet 190 corresponds to a particulartelevision program, the media content provider server 121 may select apromotion for the television program, an advertisement targeting typicalviewers of the television program, and/or any other media contentinstance that is related to the television program to serve as theadditional media content 202 that is added to the snippet 190.

Additionally or alternatively, the additional media content 202 may beselected by the media content provider server 121 in accordance with oneor more viewing preferences corresponding to the particular user whorequests access to the snippet 190. The viewing preferences may bederived from a number of different sources including, but not limitedto, information located within the XML tag 192 and/or user logsmaintained by the media content provider server 121. In someembodiments, the user may select an option that prevents the mediacontent provider server 121 from obtaining such viewing preferences.

To further illustrate the snippet access system of FIG. 10, a number ofexamples of accessing a snippet 190 will now be given. In some examples,as shown in FIG. 10, a first processing subsystem 110-1 may beconfigured to record and store a snippet 190 within a storage devicelocated thereon. When a user of processing subsystem 110-1 desires toview or otherwise access the snippet 190, the processing subsystem 110-1may transmit data representative of an access request 201-1 to the mediacontent provider server 121. In response, the media content providerserver 121 may transmit additional media content 202 to the processingsubsystem 110-1 that is to be included within the snippet 190. In someexamples, the additional media content 202 is selected in accordancewith the XML tag 192 corresponding to the snippet 190. After the snippetfile 190 has been augmented with the additional media content 202, theuser may view or otherwise access the snippet 190.

Alternatively, the user of the first processing subsystem 110-1 maydesire to share the snippet 190 with a user of a second differentprocessing subsystem 110-2. To this end, processing subsystem 110-1 maybe configured to transmit the snippet file 190 to processing subsystem110-2. The transmission may occur via a network, for example, network120. Alternatively, the snippet file 190 may be transferred to theprocessing subsystem 110-2 using a portable storage medium (e.g., aflash drive or a compact disc).

Once the snippet file 190 has been transferred to the processingsubsystem 110-2, processing subsystem 110-2 may transmit datarepresentative of an access request 201-2 to the media content providerserver 121. In response, the media content provider server 121 maytransmit additional media content 202 to the processing subsystem 110-2that is to be included within the snippet 190. After the snippet file190 has been augmented with the additional media content 202, the userof processing subsystem 110-2 may view or otherwise access the augmentedsnippet.

In certain embodiments, the additional media content 202 that is addedto the snippet 190 may be user specific. In other words, a useraccessing the snippet 190 via processing subsystem 110-1 may bepresented with different additional media content 202 than a useraccessing the snippet 190 via processing subsystem 110-2. In thismanner, the media content provider server 121 may be configured tospecifically target the interests and/or preferences of each user withthe additional media content 202 that is added to the snippet 190.

FIG. 11 illustrates an alternative snippet access system, according toan embodiment. In the system of FIG. 11, once a snippet 190 has beenrecorded by a processing subsystem (e.g., processing subsystem 110-1),the snippet 190 is uploaded to the media content provider server 121.Each processing subsystem 110 may then be required to send datarepresentative of an access request 201 to the media content providerserver 121 in order to access the recorded snippet 190.

In response to the access request 201, the media content provider server121 selects additional media content to be included within the snippet190 and generates an augmented snippet 211. The augmented snippet 211includes the data contained within the snippet file 190 and theadditional content selected by the provider server 121. The mediacontent provider server 121 then transmits the augmented snippet 211 tothe requesting processing subsystem 110. The user of the requestingprocessing subsystem 110 may then access the augmented snippet 211.

The snippet access system of FIG. 11 may also facilitate the sharing ofrecorded snippets among various processing subsystems 110. For example,the user of processing subsystem 110-1 may desire to share a recordedsnippet 190 with a user of a different processing subsystem 110-2. Tothis end, the processing subsystem 110-1 may be configured to transmitdata representing a “new snippet notification” 210 to processingsubsystem 110-2. Based on the new snippet notification 210, processingsubsystem 110-2 may transmit data representative of an access request201-2 to the media content provider server 121 in order to access therecorded snippet 190.

In response, the media content provider server 121 selects additionalmedia content to be included within the snippet 190 and generates anaugmented snippet 211. The media content provider server 121 may thentransmit the augmented snippet 211 to the processing subsystem 110-2.The user of processing subsystem 110-2 may then access the augmentedsnippet 211.

While exemplary snippet access systems are shown in FIGS. 10-11, it willbe recognized that the exemplary components and configurationsillustrated in FIGS. 10-11 are not intended to be limiting. Indeed,additional or alternative components, configurations, and/orimplementations may be used. For example, in some embodiments, one ormore of the additional access devices 114 (e.g., a personal computer)may be included within the snippet access systems of FIGS. 10-11 andconfigured to access one or more of the recorded snippets.

Moreover, it will be recognized that the snippet access systems of FIGS.10-11 may include any computer hardware and/or instructions (e.g.,software programs), or combinations of software and hardware, configuredto perform the processes described herein. Accordingly, the snippetaccess systems of FIGS. 10-11 may include any one of a number of wellknown computing devices, and may employ any of a number of well knowncomputer operating systems, including, but by no means limited to, knownversions and/or varieties of the Microsoft Windows® operating system,the Unix operating system, and the Linux operating system.

FIG. 12 illustrates an augmented snippet 211 with additional mediacontent 202 contained therein that has been added by the media contentprovider server 121. The additional media content 202 may be located atany position within the augmented snippet 211.

For example, as shown in FIG. 12, additional media content 202-1 may beadded at the beginning of the snippet 190 so that the additional mediacontent 202-1 may be viewed prior to the media content represented bythe media content data 191 being viewed. For example, an advertisementfor an upcoming television program may be appended to the beginning ofthe snippet 190 so that the promotion may be viewed before the portionof the snippet 190 represented by the media content data 191 is viewed.

Additionally or alternatively, as shown in FIG. 12, additional mediacontent 202-2 may be added at the end of the snippet 190 so that theadditional media content 202-2 may be viewed after the media contentrepresented by the media content data 191 is viewed. It will berecognized that the additional media content 202 may additionally oralternatively be inserted at any other location within the snippet file190.

In certain embodiments, the additional media content 202 may be changedby the media content provider server 121 from time to time so that theuser may be exposed to different instances of additional media content202 each time the snippet 190 is accessed. For example, the additionalmedia content 202 may include a different advertisement each time thesnippet 190 is accessed by the user.

E. Snippet Access GUIs

In certain embodiments, the processing subsystem 110 may be configuredto generate one or more GUIs that are configured to provide a user withaccess to one or more recorded snippets 190. For example, FIG. 13illustrates an exemplary GUI 230 that may be displayed to provide a userwith access to a number of snippets 231 that that user has recorded. Itwill be recognized that the GUI 230 of FIG. 13 is merely illustrative ofthe many different types and layouts of GUIs that may be used to providea user with access to one or more snippets.

As shown in FIG. 13, the GUI 230 may be configured to displayinformation corresponding to each of the recorded snippets 231. Forexample, the GUI 230 may be configured to display the titles of mediacontent instances associated with one or more of the snippets 231, thedate of recording of one or more of the snippets 231, the length in timeof one or more of the snippets 231, and a number of optionscorresponding to of one or more of the snippets 231. For example, theGUI 230 shows that a snippet was recorded from the television program“COPS” on August 23 and that the length of the snippet is 1 minute and27 seconds. The GUI 230 shows similar information for a number ofadditional snippets that have been recorded by the user.

It will be recognized that the length in time of each of the snippetsmay vary as may serve a particular media content instance. For example,a media content instance creator may specify a maximum length of asnippet of that particular media content instance (e.g., 3 minutes orless). Moreover, the media content provider server 121 may limit themaximum length of any snippet that is recorded and/or shared to complywith digital rights management specifications and/or available networkbandwidth. The maximum length may vary as may serve a particularapplication.

FIG. 13 shows that the user may be presented with a number of optionscorresponding to each of the recorded snippets 231. The options include,but are not limited to, an option to view of one or more of the recordedsnippets 231, an option to share one or more of the recorded snippets231 with another user, and an option to delete one or more of therecorded snippets 231. Additional GUIs may be displayed to assist theuser in performing one or more of the available options.

FIG. 14 shows an exemplary GUI 240 that may be configured to provide auser with access to one or more snippets 241 that have been receivedfrom another user. The GUI 240 may be configured to display pertinentinformation corresponding to one or more of the received snippets 241such as, but not limited to, the title of a media content instanceassociated with one or more of the received snippets 241, the date onwhich one or more of the snippets 241 was received, the length in timeof one or more of the received snippets 241, an identifier (e.g., a nameor email address) of the sender of one or more of the received snippets241, and a number of options corresponding to of one or more of thereceived snippets 241.

The options corresponding to each recorded snippet shown in FIG. 14 mayinclude, but are not limited to, an option to view of one or more of thereceived snippets 241, an option to record of one or more of thereceived snippets 241 and/or one or more media content instances relatedthereto, and an option to delete of one or more of the received snippets241. For example, user may select the “record” button corresponding tothe media content instance entitled “House” to record one or moreepisodes thereof. Additional GUIs may be displayed to assist the user inperforming one or more of the available options.

III. Exemplary Process View

FIG. 15 illustrates an exemplary method of sharing a snippet of a mediacontent instance between multiple processing subsystems 110, accordingto an embodiment. While FIG. 15 illustrates exemplary steps according toone embodiment, other embodiments may omit, add to, reorder, and/ormodify any of the steps shown in FIG. 15.

In step 250, a snippet 190 of a media content instance is recorded by afirst processing subsystem 110-1 at the request of a user. The requestto record the snippet 190 may originate from any suitable input device113. Alternatively, the request may originate from one or more of theadditional access devices 114.

In step 251, the snippet 190 is sent from the first processing subsystem110-1 to the second processing subsystem 110-2. The snippet may be sentto the second processing subsystem 110-2 via a peer-to-peer network, forexample.

A user of the second processing subsystem 110-2 may then send a requestto access the snippet 190 to the media content provider server 121, asshown in step 252. In response, the media content provider server 121selects additional media content to be included within the snippet, asshown in step 253. The selection of additional media content may bebased on an XML tag 191 corresponding to the sent snippet 190, one ormore user preferences, and/or any other criteria.

In step 254, the additional media content is sent from the media contentprovider server 121 to the second processing subsystem 110-2 to augmentthe snippet 190. The snippet 190 is then augmented with the additionalmedia content, as shown in step 255. The augmented snippet 211 may thenbe viewed or otherwise accessed by the user of the second processingsubsystem 110-2.

In step 256, one or more GUIs may be displayed by display device 112 toprovide the user of the second processing subsystem 110-2 with access tothe augmented snippet 211. The user may use the GUIs to browse through anumber of available snippets and access one or more of the snippets.

It will be recognized that the user of the first processing subsystem110-1 may additionally or alternatively access the recorded snippet. Tothis end, one or more of the steps illustrated in FIG. 15 mayadditionally or alternatively be used by a user of the first processingsubsystem 110-1 to access the snippet.

FIG. 16 illustrates an alternative method of sharing a snippet 190 of amedia content instance between multiple processing subsystems 110,according to an embodiment. While FIG. 16 illustrates exemplary stepsaccording to one embodiment, other embodiments may omit, add to,reorder, and/or modify any of the steps shown in FIG. 16.

In step 260, a snippet of a media content instance is recorded by afirst processing subsystem 110-1 at the request of a user. The requestto record the snippet may originate from any suitable input device 113.Alternatively, the request may originate from one or more of theadditional access devices 114.

In step 261, the snippet 190 is sent or uploaded to the media contentprovider server 121. A “new snippet notification” may also be sent fromthe first processing subsystem 110-1 to the second processing subsystem110-2, as shown in step 262. The new snippet notification is configuredto notify a user of the second processing subsystem 110-2 that thesnippet 190 has been uploaded to the media content provider server 121.

The user of the second processing subsystem 110-2 may then send arequest to access the snippet to the media content provider server 121,as shown in step 263. In response, the media content provider server 121selects additional media content to be included within the snippet 190,as shown in step 264. The selection of additional media content may bebased on an XML tag 191 corresponding to the snippet 190, one or moreuser preferences, and/or any other criteria.

The snippet 190 is then augmented with the selected additional mediacontent, as shown in step 265. In step 266, the augmented snippet 211 issent from the media content provider server 121 to the second processingsubsystem 110-2. The augmented snippet 211 may then be viewed orotherwise accessed by the user of the second processing subsystem 110-2.

In step 267, one or more GUIs may be displayed by the display device 112to provide the user of the second processing subsystem 110-2 with accessto the augmented snippet 211. The user may use the GUIs to browsethrough a number of received snippets and access one or more of thereceived snippets.

IV. Alternative Embodiments

The preceding description has been presented only to illustrate anddescribe embodiments of the invention. It is not intended to beexhaustive or to limit the invention to any precise form disclosed. Theinvention may be practiced otherwise than is specifically explained andillustrated without departing from its spirit or scope. It is intendedthat the scope of the invention be defined by the following claims.

1. A system comprising: a network entity; and a requesting media contentprocessing subsystem communicatively coupled to said network entity andconfigured to transmit to said network entity a request to access asnippet of a media content instance; wherein said network entity isconfigured to augment said snippet with additional media content andprovide a user with access to said augmented snippet via said requestingmedia content processing subsystem.
 2. The system of claim 1, whereinsaid requesting media content processing subsystem is further configuredto record said snippet prior to transmitting said request to saidnetwork entity.
 3. The system of claim 2, wherein said requesting mediacontent processing subsystem is further configured to generate one ormore graphical user interfaces that are configured to facilitate saidrecording of said snippet.
 4. The system of claim 2, wherein saidrequesting media content processing subsystem is further configuredupload said snippet to said network entity such that said snippet isstored at said network entity.
 5. The system of claim 1, furthercomprising a recording media content processing subsystem configured torecord said snippet and transmit said snippet to said requesting mediacontent processing subsystem.
 6. The system of claim 1, furthercomprising a recording media content processing subsystem configured torecord said snippet and upload said snippet to said network entity suchthat said snippet is stored at said network entity when said requestingmedia content processing subsystem transmits said request to saidnetwork entity.
 7. The system of claim 1, wherein said snippet comprisesa data tag comprising information corresponding to said snippet.
 8. Thesystem of claim 7, wherein said network entity is configured to selectsaid additional media content in accordance with said informationincluded within said data tag.
 9. The system of claim 1, wherein saidnetwork entity is further configured to select said additional mediacontent in accordance with one or more user preferences corresponding tosaid user.
 10. The system of claim 1, wherein said requesting mediacontent processing subsystem is further configured to generate one ormore graphical user interfaces that are configured to facilitate saidrequest to access said snippet.
 11. The system of claim 1, wherein saidrequesting media content processing subsystem is further configured togenerate one or more graphical user interfaces that are configured toprovide said user with access to said augmented snippet.
 12. The systemof claim 1, wherein said additional media content comprises at least oneof an advertisement, a commercial, a promotion, a screen shot, and alisting of credits.
 13. The system of claim 1, further comprising: oneor more access devices configured to communicate with said networkentity; wherein said access devices are configured to provide said userwith access to said augmented snippet.
 14. An apparatus comprising: areceiver configured to receive a request to access a snippet of a mediacontent instance; a communication interface unit configured to transmitdata representative of said request to a network entity and receiveaccess to an augmented snippet, said augmented snippet comprising saidsnippet and additional media content selected by said network entity,and a processor communicatively coupled to said receiver and saidcommunication interface and configured to generate one or more graphicaluser interfaces configured to provide a user with access to saidaugmented snippet.
 15. The apparatus of claim 14, wherein said apparatusis further configured to record said snippet prior to transmitting saidrequest to said network entity.
 16. The apparatus of claim 14, whereinsaid snippet is stored at said network entity.
 17. The apparatus ofclaim 14, wherein said snippet comprises a data tag comprisinginformation corresponding to said snippet and wherein said additionalmedia content is selected by said network entity in accordance with saidinformation included within said data tag.
 18. The apparatus of claim14, further comprising a graphics engine configured to generate one ormore graphical user interfaces that are configured to provide said userwith access to said augmented snippet.
 19. The apparatus of claim 14,wherein said additional media content comprises at least one of anadvertisement, commercial, promotion, screen shot, and listing ofcredits.
 20. A method comprising: processing a request for a user toaccess a snippet of a media content instance via an access device;augmenting said snippet with additional media content selected inaccordance with said request; and providing said user with access tosaid augmented snippet via said access device.
 21. The method of claim20, further comprising selecting said additional media content inaccordance with information located within said snippet.
 22. The methodof claim 20, further comprising selecting said additional media contentin accordance with one or more user preferences corresponding to saiduser.
 23. The method of claim 20, further comprising generating one ormore graphical user interfaces that are configured to provide said userwith access to said augmented snippet.
 24. The method of claim 20,wherein said additional media content comprises at least one of anadvertisement, commercial, promotion, screen shot, and listing ofcredits.
 25. The method of claim 20, wherein said access devicecomprises at least one of a set-top box, home communication terminal,digital home communication terminal, stand-alone personal videorecorder, video-enabled phone, and personal computer.